package ua.com.alus.resvac.crm.domen.entities;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToOne;
import javax.persistence.Table;

/**
 * VacancyAccount Details
 * Created by Usatov Alexey
 */
@Entity
@Table(name = "VACANCY_ACCOUNT_DETAILS")
@NamedQueries(
        {
                @NamedQuery(name = VacancyAccountDetails.GET_VACANCY_ACCOUNT_DETAILS,
                        query = "select r from VacancyAccountDetails r where accountUuid=:accountUuid")
        }
)
public class VacancyAccountDetails extends BaseEntity {
    public static final String GET_VACANCY_ACCOUNT_DETAILS =
            "ua.com.alus.resvac.crm.domen.entities.VacancyAccountDetails.getVacAccDetails";
    @Column(name = "FK_ACCOUNT_UUID")
    private String accountUuid;

    @Column(name = "NAME")
    private String name;

    @Column(name = "DESCRIPTION")
    private String description;

    @OneToOne
    @JoinColumn(name = "FK_PROF_AREA_UUID", referencedColumnName = "PK_UUID", insertable = false, updatable = false)
    private ProfessionArea professionArea;

    @Column(name = "FK_PROF_AREA_UUID")
    private String fkProfAreaUuid;

    @OneToOne
    @JoinColumn(name = "FK_CITY_ID", referencedColumnName = "ID", insertable = false, updatable = false)
    private City city;

    @Column(name = "FK_CITY_ID")
    private Integer fkCityId;

    @Column(name = "OFFICE_ADDRESS")
    private String officeAddress;

    @Column(name = "CONTACT")
    private String contact;

    @Column(name = "PHONE")
    private String phone;

    @Column(name = "ICQ")
    private Integer icq;

    @Column(name = "SKYPE")
    private String skype;

    @Column(name = "SITE_URL")
    private String siteUrl;

    @Column(name = "FK_REGION_ID")
    private Integer fkRegionId;


    public ProfessionArea getProfessionArea() {
        return professionArea;
    }

    public String getFkProfAreaUuid() {
        return fkProfAreaUuid;
    }

    public void setFkProfAreaUuid(String fkProfAreaUuid) {
        this.fkProfAreaUuid = fkProfAreaUuid;
    }

    public String getAccountUuid() {
        return accountUuid;
    }

    public void setAccountUuid(String accountUuid) {
        this.accountUuid = accountUuid;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public City getCity() {
        return city;
    }

    public void setCity(City city) {
        this.city = city;
    }

    public Integer getFkCityId() {
        return fkCityId;
    }

    public void setFkCityId(Integer fkCityId) {
        this.fkCityId = fkCityId;
    }

    public String getOfficeAddress() {
        return officeAddress;
    }

    public void setOfficeAddress(String officeAddress) {
        this.officeAddress = officeAddress;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Integer getIcq() {
        return icq;
    }

    public void setIcq(Integer icq) {
        this.icq = icq;
    }

    public String getSkype() {
        return skype;
    }

    public void setSkype(String skype) {
        this.skype = skype;
    }

    public String getSiteUrl() {
        return siteUrl;
    }

    public void setSiteUrl(String siteUrl) {
        this.siteUrl = siteUrl;
    }

    public Integer getFkRegionId() {
        return fkRegionId;
    }

    public void setFkRegionId(Integer fkRegionId) {
        this.fkRegionId = fkRegionId;
    }
}
